home *** CD-ROM | disk | FTP | other *** search
-
- Include "expequ.h"
- Include "equ.h"
-
-
- .text
-
- ***************************************************
- *** ***
- ***************************************************
- dumbentry:
- clr.l d0
- rts
-
- dc.l "EXPT"
- dc.w 200
- dc.l 0
-
- table: dc.l 0
- dc.l name,special,check,ascii
-
- check:
- rrts: rts
-
- *
- * Ascii
- *
- ascii: move.l table,a0
- move.l f_openw(a0),a0
- jsr (a0)
- beq rrts
-
- move.l table,a0
- move.l setrange(a0),a0
- jsr (a0)
-
- move.l table,a0
- move.l doflag(a0),a0
- tst.b (a0)
- beq asc10
-
- bsr asc1
-
- asc10: move.l table,a0
- move.l f_closew(a0),a0
- jmp (a0)
-
-
-
- asc1: move.l table,a0
- move.l dorange(a0),a0
- jsr (a0)
- *
- * this will get called for every chunk of text to be exported till
- * all chunks are gone
- *
- move.l table,a4
- move.l objptr(a4),a3
- move.l (a3),a3
- move.l (a3),a3
-
- move.l markcol1(a4),a0
- move.w (a0),d0
- mulu #ob_SizeOf,d0
- move.l ob_Ptr(a3,d0.l),a0
- move.l (a0),a0
- move.l cm_THandle(a0),a0
- move.l (a0),a0
- move.l a0,a1
- move.l markoff1(a4),a2
- add.l (a2),a0
- move.l markoff2(a4),a2
- add.l (a2),a1
- move.l a0,curptr
- move.l a1,endptr
-
- *
- asc2: move.l curptr,a0
- cmp.l endptr,a0
- bcc rrts
- move.b (a0)+,d0
- beq asc9
- move.l a0,curptr
-
- lea ktoi,a0
- move.b d0,d1
- moveq #0,d0
- asc3: cmp.b (a0)+,d1
- beq asc4
- addq.w #1,d0
- cmp.w #256,d0
- bcs asc3
- bra asc2
- asc4: bsr putbyte
- bra asc2
-
- asc9: moveq #0,d0
- move.b (a0)+,d0
- move.l a0,curptr
- move.l d0,-(sp)
-
- lsl.w #2,d0
- lea t_rtns,a0
- move.l 0(a0,d0.w),a0
- jsr (a0)
-
- move.l (sp)+,d0
- move.l table,a0
- move.l cmdlength(a0),a0
- move.b 0(a0,d0.l),d0
- add.l d0,curptr
- bra asc2
-
-
- *****************************************
- * *
- *****************************************
- crlf: move.b #$d,d0 ;cr
- bsr putbyte
- move.b #$a,d0 ;lf
- bra putbyte
-
- tab: move.b #9,d0 ;tab
- bra putbyte
-
- *****************************************
- * *
- *****************************************
- putbyte:
- move.l table,a1
- move.l f_put(a1),a1
- jmp (a1)
-
- *****************************************
- * *
- *****************************************
- putword:
- move.l table,a1
- move.l f_putw(a1),a1
- jmp (a1)
-
- *************************************************************
- *************************************************************
- .data
- *
-
- t_rtns: dc.l rrts,crlf,rrts,rrts,rrts,rrts,tab,rrts
- dc.l rrts,rrts,rrts,rrts,rrts,rrts,rrts,rrts
-
- dc.l rrts,rrts,rrts,rrts,rrts,rrts,rrts,rrts
- dc.l rrts,rrts,rrts,rrts,rrts,rrts,rrts,rrts
-
- dc.l rrts,rrts,rrts,rrts,rrts,rrts,rrts,rrts
- dc.l rrts,rrts,rrts,rrts,rrts,rrts,rrts,rrts
-
- dc.l rrts,rrts,rrts,rrts,rrts,rrts,rrts,rrts
- dc.l rrts,rrts,rrts,rrts,rrts,rrts,rrts,rrts
-
- dc.l rrts,rrts,rrts,rrts,rrts,rrts,rrts,rrts
- dc.l rrts,rrts,rrts,rrts,rrts,rrts,rrts,rrts
-
-
- ktoi: dc.b $00,$00,$00,$00,$00,$00,$00,$00 ;$00-$07
- dc.b $00,$00,$00,$00,$00,$00,$00,$00 ;$08-$0f
- dc.b $00,$00,$00,$00,$00,$00,$00,$00 ;$10-$17
- dc.b $00,$00,$00,$00,$00,$00,$00,$00 ;$18-$1f
- dc.b $20,$21,$22,$23,$24,$25,$26,$27
- dc.b $28,$29,$2a,$2b,$2c,$2d,$2e,$2f
- dc.b $30,$31,$32,$33,$34,$35,$36,$37
- dc.b $38,$39,$3a,$3b,$3c,$3d,$3e,$3f
- dc.b $40,$41,$42,$43,$44,$45,$46,$47
- dc.b $48,$49,$4a,$4b,$4c,$4d,$4e,$4f
- dc.b $50,$51,$52,$53,$54,$55,$56,$57
- dc.b $58,$59,$5a,$5b,$5c,$5d,$5e,$5f
- dc.b $60,$61,$62,$63,$64,$65,$66,$67
- dc.b $68,$69,$6a,$6b,$6c,$6d,$6e,$6f
- dc.b $70,$71,$72,$73,$74,$75,$76,$77
- dc.b $78,$79,$7a,$7b,$7c,$7d,$7e,$00
-
- dc.b 199,252,233,226,228,224,229,231
- dc.b 234,235,232,239,238,236,196,197
- dc.b 201,230,198,244,246,242,251,249
- dc.b 254,214,220,162,163,161,187,164
- dc.b 225,237,243,250,241,209,189,156
- dc.b 185,000,141,145,144,186,136,137
- dc.b 227,245,159,191,247,215,192,195
- dc.b 213,000,000,180,181,183,184,182
- dc.b 000,000,138,000,000,000,000,000
- dc.b 000,000,000,000,000,000,000,000
- dc.b 000,000,000,000,000,000,000,000
- dc.b 000,000,000,000,000,165,000,151
- dc.b 000,000,000,150,000,000,153,000
- dc.b 000,000,000,000,000,160,000,000
- dc.b 131,140,135,134,000,000,139,130
- dc.b 155,172,171,128,147,148,149,173
-
- *
- special:
- dc.w 1
- dc.l spc1
-
- name: dc.b "Ascii Text v2.0.0",0
- spc1: dc.b "Stripped Ascii",0
-
-
- .bss
-
- curptr: ds.l 1
- endptr: ds.l 1
-